//#include "List.h"
//
//class Solution {
//public:
//    ListNode* reverse(ListNode* list1,ListNode* list2)
//    {
//        if (list1 == NULL) return list2;
//        if (list2 == NULL) return list1;
//        auto head = new ListNode(-1);
//        auto first = head;
//        while (list1 && list2)
//        {
//            if (list1->val < list2->val)
//            {
//                first->next = list1;
//                first = first->next;
//                list1 = list1->next;
//            }
//            else
//            {
//                first->next = list2;
//                first = first->next;
//                list2 = list2->next;
//            }
//        }
//        if (list1) first->next = list1;
//        if (list2) first->next = list2;
//        return head->next;
//    }
//};